package com.itgacl.magic4j.modules.alipay.config;

import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;

/**
 * 支付宝开放平台参数配置
 * 参考文档：https://opendocs.alipay.com/open/284
 *
 * @author 徐达沛
 * @date 2021/9/9
 */
@Data
@Component
@ConfigurationProperties(prefix = "app.alipay.webapp")
public class AlipayConfig {

    /**
     * 应用appId
     */
    private String appId;

    /**
     * 支付宝网关地址（固定地址：https://openapi.alipay.com/gateway.do）
     */
    private String alipayGatewayUrl;
    /**
     * 支付宝开放平台授权地址
     */
    private String openAuthUrl;

    /**
     * 获取用户信息接口地址
     */
    private String userInfoUrl;

    /**
     * 获取用户ID接口地址
     */
    private String userIdUrl;

    /**
     * 开发者私钥，由开发者自己生成
     */
    private String appPrivateKey;

    /**
     * 参数返回格式，只支持 JSON 格式
     */
    private String format = "JSON";

    /**
     * 编码集，支持 GBK/UTF-8。
     */
    private String charset = "UTF-8";

    /**
     * 支付宝公钥，由支付宝生成。
     */
    private String alipayPublicKey;

    /**
     * 签名类型，商户生成签名字符串所使用的签名算法类型，目前支持 RSA2 和 RSA，推荐使用 RSA2。
     */
    private String signType = "RSA2";

}
